<?php

declare(strict_types=1);
/**
 * 
 */
namespace WanZ\App\User\Contract;

interface UserBlackContract
{
    /**
     * 查询单条 - 根据ID.
     * @param int $id ID
     * @param array|string[] $columns 查询字段
     * @return array 数组
     */
    public function getUserById(int $id, array $columns = []): array;

    /**
     * 查询多条 - 根据用户手机号.
     * @param string $userPhone 用户手机号
     * @param array $columns 查询字段
     * @return array 响应数组
     */
    public function getUsersByUserPhone(string $userPhone, array $columns = []): array;

    /**
     * 按条件计算用户总数.
     * @param array $where 查询条件
     * @return int 返回值
     */
    public function countUsers(array $where = []): int;

    /**
     * 删除 - 单条
     * @param int $id 删除ID
     * @return int 删除条数
     */
    public function deleteUser(int $id): int;
    
}
